package tsj.ai.alibaba.data.analysis.prompt;

import org.springframework.ai.chat.prompt.PromptTemplate;

import javax.swing.text.Document;

/**
 * @author taoshujian
 * @version 1.0
 * @since 2025-11-13 14:18:05
 */
public class PromptConstant {

    public static PromptTemplate getTimeConversionPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("time-conversion"));
    }
    public static PromptTemplate getQuestionExpansionPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("question-expansion"));
    }

    public static PromptTemplate getQuestionToKeywordsPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("question-to-keywords"));
    }

    public static PromptTemplate getBusinessKnowledgePromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("business-knowledge"));
    }

    public static PromptTemplate getSemanticModelPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("semantic-model"));
    }

    public static PromptTemplate getSemanticConsistencyPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("semantic-consistency"));
    }

    public static PromptTemplate getSqlErrorFixerPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("sql-error-fixer"));
    }

    public static PromptTemplate getMixSqlGeneratorSystemPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("mix-sql-generator-system"));
    }

    public static PromptTemplate getMixSqlGeneratorPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("mix-sql-generator"));
    }

    public static PromptTemplate getMixSelectorPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("mix-selector"));
    }

    public static PromptTemplate getPlannerNl2sqlOnlyTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("planner-nl2sql-only"));
    }

    public static PromptTemplate getPlannerPromptTemplate() {
        return new PromptTemplate(PromptLoader.loadPrompt("planner"));
    }
}
